package com.xunlai.infra.permission.business.service;

import com.xunlai.infra.permission.business.dao.entity.vo.UserMemberVo;
import com.xunlai.infra.permission.business.vo.member.MemberCompleteVo;
import com.xunlai.infra.permission.business.vo.member.MemberInfoVo;
import com.xunlai.infra.permission.business.vo.member.MemberQueryVo;
import com.xunlai.infra.permission.business.vo.member.RechargeVo;
import com.xunlai.infra.permission.common.exception.PermissionBusinessException;
import com.xunlai.infra.permission.common.vo.BasePageRespVo;

/**
 * @author liang
 * @date 9/8/23 6:33 PM
 */
public interface MemberService {


    RechargeVo recharge(Long membershipsGoodsId, Long userId) throws PermissionBusinessException;

    void completeInfo(Long accountId, MemberCompleteVo memberCompleteVo);

    MemberInfoVo getInfo(Long accountId);

    BasePageRespVo<UserMemberVo> listUserMember(Integer pageNum, Integer pageSize);

    BasePageRespVo<UserMemberVo> listUserMember(MemberQueryVo memberQueryVo,Integer pageNum, Integer pageSize);
}
